//
//  MVC.m
//  简单动画
//
//  Created by yozoz on 16/8/12.
//  Copyright © 2016年 Nex. All rights reserved.
//

#import "MVC.h"

#import "UIColor+randomColorMake.h"
@interface MVC ()
@property(strong)NSTimer* runner;
@end

@implementation MVC
-(instancetype)initWithFrame:(CGRect)frame{
    self=[super initWithFrame:frame];
    if (self) {
        self.backgroundColor = [UIColor clearColor];
        self.runner=[[NSTimer alloc]initWithFireDate:[NSDate new] interval:1 target:self selector:@selector(run:) userInfo:nil repeats:YES];
     [[NSRunLoop mainRunLoop] addTimer:_runner forMode:NSDefaultRunLoopMode];}
    return self;
}
-(void)run:(NSDictionary*)userInfo{
    [self setNeedsDisplay];
}

-(void)drawRect:(CGRect)rect{
    static CGFloat N=0.0;
    N++;
        CGContextRef hua=UIGraphicsGetCurrentContext();//画布。
        CGContextSetLineCap(hua, kCGLineCapRound);//空心圆。
    
//——————————————————————————————————
//秒针。
    CGContextRef Miaozhen=UIGraphicsGetCurrentContext();//画布。
    [[UIColor redColor]set];                                                   //颜料。
    CGPathRef APath = CGPathCreateMutable(); ///创建一个新的路径
    CGContextMoveToPoint(Miaozhen, rect.size.width/2, rect.size.height/2);//起点坐标。
    CGFloat A2=rect.size.width/2;
    CGFloat B2=rect.size.height/2;
    CGFloat R2=rect.size.width/2.5;
    //    X坐标=a + Math.sin(2*Math.PI / 360) * r ；Y坐标=b + Math.cos(2*Math.PI / 360) * r ；
    CGContextAddLineToPoint(Miaozhen, A2+sin(2*M_PI/360*N*6.0)*R2,B2-cos(2*M_PI/360*N*6.0)*R2);//终点坐标。
    CGContextAddPath(Miaozhen, APath);//添加到画布上面。
    CGContextSetLineWidth(Miaozhen, 5);//线宽。
    CGContextStrokePath(Miaozhen);//线。
    NSLog(@"X=%f________________>>>>Y=%f",A2+sin(2*M_PI/360*N*6.0)*R2,B2-cos(2*M_PI/360*N*6.0)*R2);

    //        CGContextFillPath(hua); //render//面。
//——————————————————————————————————
    //分针。
    CGContextRef Shizhen=UIGraphicsGetCurrentContext();//画布。
    [[UIColor blackColor]set];                                                   //颜料。
    CGPathRef BPath = CGPathCreateMutable(); ///创建一个新的路径
    CGContextMoveToPoint(Shizhen, rect.size.width/2, rect.size.height/2);//起点坐标。
    CGFloat A=rect.size.width/2;
    CGFloat B=rect.size.height/2;
    CGFloat R=rect.size.width/3.3;
//    X坐标=a + Math.sin(2*Math.PI / 360) * r ；Y坐标=b + Math.cos(2*Math.PI / 360) * r ；
    CGContextAddLineToPoint(Shizhen, A+sin(45+2*M_PI/360*N/60)*R,B-cos(45+2*M_PI/360*N/60)*R);//终点坐标。
    CGContextAddPath(Shizhen, BPath);//添加到画布上面。
    CGContextSetLineWidth(Shizhen, 7);//线宽。
    CGContextStrokePath(Shizhen);//线。
    //        CGContextFillPath(hua); //render//面。
//——————————————————————————————————————
//时针。
    CGContextRef Fenzhen=UIGraphicsGetCurrentContext();//画布。
    [[UIColor blackColor]set];                                                   //颜料。
    CGPathRef CPath = CGPathCreateMutable(); ///创建一个新的路径
    CGContextMoveToPoint(Shizhen, rect.size.width/2, rect.size.height/2);//起点坐标。
    CGFloat A1=rect.size.width/2;
    CGFloat B1=rect.size.height/2;
    CGFloat R1=rect.size.width/4.4;
    //    X坐标=a + Math.sin(2*Math.PI / 360) * r ；Y坐标=b + Math.cos(2*Math.PI / 360) * r ；
    CGContextAddLineToPoint(Fenzhen, A1+sin(-45+2*M_PI/360*(N/120.0))*R1,B1-cos(-45+2*M_PI/360*(N/120.0))*R1);//终点坐标。
    CGContextAddPath(Fenzhen, CPath);//添加到画布上面。
    CGContextSetLineWidth(Fenzhen, 9);//线宽。
    CGContextStrokePath(Fenzhen);//线。
    //        CGContextFillPath(hua); //render//面。
    }

@end
